# s = “ajldjlajfdljfddd”，去重并从小到大排序输出”adfjl”
from itertools import count

# s ="ajldjlajfdljfddd"
# a = set(s)
# list1 = list(a)
# b = ''.join(sorted(list1))
#
# print(b)

# 6.如何在一个函数内部修改全局变量
# x = 10  # 全局变量
#
# def change_global():
#     global x  # 声明使用全局变量x
#     x = 20    # 修改全局变量的值
#
# print("修改前:", x)  # 输出: 10
# change_global()
# print("修改后:", x)  # 输出: 20

# a=”hello”和b=”你好”编码成bytes类型
# a='hello'
# a = a.encode(encoding='utf-8')
# print(a)
# b = "你好"
# b = b.encode(encoding='utf-8')
# print(b)

# 现有字典 d={"a":24，"g":52，"i":12，"k":33}请按字典中的 value值进行排序？
# d = {"a": 24, "g": 52, "i": 12, "k": 33}
#
# sorted_keys = sorted(d, key=d.get)
# print("按value排序的key:", sorted_keys)
#
#
# sorted_values = sorted(d.values())
# print("排序后的value:", sorted_values)

# 简述什么是装饰器及应用场景，并手写装饰器
# 装饰器（Decorator）是Python中一种特殊的语法，它允许在不修改原函数代码的情况下，为函数添加额外的功能。装饰器本质上是一个高阶函数，它接受一个函数作为参数，并返回一个新的函数。
# def simple_decorator(func):
#     def wrapper():
#         print("函数执行前")
#         func()
#         print("函数执行后")
#     return wrapper
#
# @simple_decorator
# def say_hello():
#     print("Hello!")
#
# say_hello()
# 利用collections库的Counter方法统计字符串每个单词出现的次数"kjalfj;ldsjafl;hdsllfdhg;lahfbl;hl;ahlf;h"字符串转化为列表，列表可以直接统计元素个数
# a = r"kjalfj;ldsjafl;hdsllfdhg;lahfbl;hl;ahlf;h"
# list1 =list(a.split(';'))
# print(list1)
# for i in list1:
#     num = 0
#     num = list1.count(i)
#     print(i,num)


# 如何删除字典的键和合并字典
# person = {'name': 'Alice', 'age': 25, 'city': 'New York', 'country': 'USA'}
#
# del person['country']
# print(person)  # 输出: {'name': 'Alice', 'age': 25, 'city': 'New York'}
#
# dict1 = {'a': 1, 'b': 2}
# dict2 = {'b': 3, 'c': 4}
#
# dict1.update(dict2)
# print(dict1)

#x=”abc”,y=”def”,z=[“d”,”e”,”f”],分别求出x.join(y)和x.join(z)返回的结果
# x = "abc"
# y = "def"
# z = ["d", "e", "f"]
#
# # 求 x.join(y) 的结果
# result1 = x.join(y)
# print(result1)
#
# # 求 x.join(z) 的结果
# result2 = x.join(z)
# print(result2)

# python中生成随机整数、随机小数、0—1之间小数方法
# import random
#
#
# random_int = random.randint(1, 100)
# print(f"随机整数: {random_int}")
#
# # 生成随机小数（指定范围）
# random_float = random.uniform(10.5, 20.5)
# print(f"随机小数: {random_float}")
#
# # 生成 0-1 之间的随机小数
# random_0_to_1 = random.random()
# print(f"0-1随机小数: {random_0_to_1}")

# match()函数只检测是不是在 string 的开始位置匹配，
# search()会扫描整个 string 查找匹配；
# 也就是说 match()只有在0位置匹配成功的话才有返回，
# 如果不是开始位置匹配成功的话，match()就返回 None.



